大家好,我是Leo
今天來介紹的是django的應用方式
OK~~~ Let's go now!!!
終於來到最後一天,逼著自己至少要完成30篇
雖然在第二天忘記po文就中斷
但是還是給自己要完成30篇的目標
很慶幸來到了最後一哩路
就讓我們來一起完成最後一哩路吧
設計model時,要注重資料正規化
何謂資料正規化呢?
通過正規化
,可以改善資料庫的結構
,使其更容易理解
、維護和擴展
。這樣的設計通常能夠提供更好的性能和更容易的查詢。
但是,正規化也可能會增加查詢的複雜性
,因為在進行查詢時可能需要跨越多個表來獲取所需的數據
。在進行資料正規化時,需要根據具體的應用場景和需求來平衡資料庫的結構和查詢效率。
在開發Web應用程式時,我們經常需要處理大量的資料。有時候,我們希望根據特定條件過濾資料
,以便提供用戶所需的信息。在Django應用程式中,我們可以使用Django REST Framework提供的serializer來輕鬆實現這一目標。
當我們使用serializer時,我們可以定義不同的參數,來過濾我們的資料。
例如,如果我們有一個包含用戶資料的模型,我們可以使用serializer的filters參數,對特定條件進行資料篩選。
example
from rest_framework import serializers
from myapp.models import User
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'username', 'email', 'created_at')
extra_kwargs = {
'password': {'write_only': True}, # 隱藏密碼欄位
}
class FilteredUserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'username', 'email', 'created_at')
extra_kwargs = {
'password': {'write_only': True},
}
filters = {
'username': serializers.CharField(), # 根據用戶名進行篩選
'created_at__gte': serializers.DateTimeField(), # 篩選創建時間大於等於指定時間的用戶
}
很多情況下我們會自訂義共用套件模組
library
或撰寫共用views class function
當這個情況下,我們可以透過views將共用模組套用進去
假設我們有一個redis-cluster集群
我們有一隻新增redis-cluster key的API
我們撰寫了一隻共用function測試redis連線與否
透過這個function 我們可以在新增、修改、刪除都可以使用
這時候判斷我們就需要再views做邏輯控制
另外設計盡量是RESTful風格來撰寫API
什麼是RESTful API?
優勢:
方法直觀
,易於理解和閱讀
。遵循標準的HTTP方法
,不需要額外的協議,易於使用和測試
。擴展性強
。透過定義清晰的資源和使用標準的HTTP方法,RESTful API提供了一個高效且可擴展的方式,使得不同應用程式和平台之間能夠輕鬆地進行數據交換和集成
。
最後的最後一哩路幫django複習收個尾
很開心我真的有完成30篇的挑戰
過程一波三折,也是跪著走完最後一哩路
謝謝大家聽我的廢話
當然希望對各位是有幫助的
謝謝各位,我是Leo,有時間精力會再想挑戰不同的議題
或許下次想挑戰的是ML
,DL
的議題
By the way 現在只想好好休息阿